// 从mutation-types文件中引入所有的变量
import * as types from './mutation-types'
// 声明一个变量，赋值对象
const mutations = {
  // 这个mutations方法，这里的方法名用mutation-types中的变量来灵活替代，是es6语法
  [types.SET_SINGER] (state, singer) {
    // 方法执行的内容，就是改变state状态对象里面的singer属性的值，用这个方法的第二个参数来传递
    state.singer = singer
  },
  // 下面播放器相关
  // 播放状态
  [types.SET_PLAYING_STATE] (state, flag) {
    state.playing = flag
  },
  // 播放器打开与否
  [types.SET_FULL_SCREEN] (state, flag) {
    state.fullScreen = flag
  },
  // 播放顺序
  [types.SET_PLAYLIST] (state, list) {
    state.playlist = list
  },
  // 播放列表
  [types.SET_SEQUENCE_LIST] (state, list) {
    state.sequenceList = list
  },
  // 播放模式,在配置文件里面控制
  [types.SET_PLAY_MODE] (state, mode) {
    state.mode = mode
  },
  // 第几首歌曲，索引
  [types.SET_CURRENT_INDEX] (state, index) {
    state.currentIndex = index
  },
  // 歌单的对象
  [types.SET_DISC] (state, disc) {
    state.disc = disc
  },
  // 排行榜点击后数据
  [types.SET_TOP_LIST] (state, topList) {
    state.topList = topList
  },
  // 收藏
  [types.SET_SEARCH_HISTORY] (state, searchHistory) {
    state.searchHistory = searchHistory
  },
  // 播放数据
  [types.SET_PLAY_HISTORY] (state, playHistory) {
    state.playHistory = playHistory
  },
  // 收藏列表
  [types.SET_FAVORITE_LIST] (state, favoriteList) {
    state.favoriteList = favoriteList
  }
}
// 把这个对象默认导出
export default mutations
